The present invention relates to an ignition control device and a corresponding ignition control method.
Although it can be applied to any ignition control system, the present invention and its underlying principle are explained in relation to an engine control unit on board a motor vehicle.
Ignition control devices for controlling ignition events for ignition-coil ignition systems and devices, generally have two control functions: to control a desired ignition power via the ignition coil turn-on time, i.e., charging time, and to control the angle of an ignition pulse via the ignition coil turn-off time, i.e., end of charge.
The ignition power supplied over the ignition coil charging time in coil ignition systems varies in length depending on the vehicle electrical supply voltage applied to the electric circuit of the coil as well as the time constant of the electric circuit.
The respective setpoints are usually stored as a function of engine rpm and other possible engine parameters in the form of a characteristic map in the control unit.
To output angle signals, customary control units have an angle sensor wheel that supplies equidistant-angle pulses to the ignition control device. Most ignition control device architectures, however, allow the ignition events to be calculated only in segments, due to the computation time, with one segment equaling a 720xc2x0 angle interval of the crankshaft, divided by the number of cylinders, i.e., 180xc2x0 in a four-cylinder engine, for example. While the angular positions of the ignition events determined in the calculation can therefore be gauged with a sufficient degree of accuracy via the angle sensor wheel and the usual timer and counter circuits in ignition control devices, the calculation itself is based on a detected rpm.
The cylinder-specific control quantities for ignition output are therefore usually calculated once per ignition interval, i.e., segment, and synchronized with ignition output using a cylinder counter. This means that a cylinder counter informs the ignition control device to which cylinder it should send the next ignition signal to be triggered, which includes the start and end of the charge (i.e., ignition).
To calculate the ignition events, the angle/time characteristic for the rotational movement of the internal combustion engine is focused, since the energy in the ignition system is defined over a specific charging time, and the charging time ends at a defined ignition angle position. Thus, we need to know the angle interval to which the charging time corresponds after charging begins. To describe this angular movement, we need to have information about engine rpm.
In most ignition control devices commonly used today for spark ignition engines, this information is determined once per ignition interval at a defined speed measuring point with a fixed angular position in relation to the upper dead center of the next cylinder to be fired. With a longer charging time and/or higher speed, the start of the charging time moves closer to the angular position of the speed measuring point until the speed measuring point finally coincides with the charge interval, and the speed information from the previous segment is used for calculating the ignition event. This is known as overlapping ignition output.
Upon reaching overlap mode, the cylinder counter is corrected by an offset. This means that the ignition events for an ignition interval following the current ignition interval are triggered as early as the current ignition interval. If the ignition output determines, during the current ignition interval, that charging of the current event actually began in the past, the start of charging for the current cylinder is triggered immediately during the current ignition interval, and the start of charging for the subsequent cylinder is triggered with a delay. It is precisely during this transition from non-overlap mode to overlap mode that many ignition output methods lack information about the ignition angle and charging time of the subsequent cylinder, so that the values for the current cylinder are used for the ignition angle and charging time of the subsequent cylinder.
More precise procedures calculate the setpoints of the subsequent cylinders along with the data of the current ignition interval, and buffer this data for the transition to overlap mode. Up to now, however, there has been no clear, transparent system for showing the system user, for example the mechanic, which setpoints are used for ignition output. Furthermore, there is no standard, universally applicable method that could also be used by other output devices.
To explain the underlying principle, FIG. 2 shows a schematic representation of the ignition sequence in a four-cylinder internal combustion engine.
In FIG. 2, crank angle KW is plotted in degrees on the x-axis, ignition ZZ, which has the sequence . . . -2-1-3-4-2- . . . , is plotted on the y-axis. A complete cycle equals 720xc2x0 KW, with a cycle time tZYK. One segment equals 720xc2x0KW/4=180xc2x0, with a segment time tSEG.
FIG. 3 shows a schematic representation of the ignition control function sequences in the segment for the first cylinder of the four-cylinder internal combustion engine, when applying ignition coil current IZ.
Rotation speed N is detected at 0xc2x0, and, immediately afterwards, charging time tL and ignition angle WZ (which are more or less equal to the end-of-dwell angle and end-of-charge angle, respectively) are taken from a characteristic map or calculated at calculation time B.
Start-of-dwell or start-of-charge angle WLB is then calculated from the following equation:
WLB=WZxe2x88x92tLxc3x97xcfx89,
assuming a uniform movement, where xcfx89 is the angular velocity corresponding to rotation speed N. Due to the computing time, this time and angular position of the ignition events is calculated only once per ignition interval.
To determine the start-of-charge angle, a counter C1 detects angle WLB starting at 0xc2x0, via crankshaft sensor signal KWS, and activates the ignition coil output stage upon reaching angle WLB. A further counter C2 detects angle WZ starting at 0xc2x0 via crankshaft sensor signal KWS, and discontinues activation upon reaching angle WZ.
In the overlap mode mentioned above, it is determined that the event to be triggered by counter C1 lay in the past, and therefore the charge should begin immediately at 0xc2x0.
The ignition control device according to the present invention, and the corresponding ignition control method, have an advantage over known approaches in that they provide a uniform, transparent procedure, which can be used universally on an engine control platform to control the transmission of cylinder-specific control quantities to the ignition output. If desired, the procedure can also be used concomitantly by other output devices, such as the injection output. The transmission of values to the output device can be easily followed.
According to the idea underlying the present invention, the ignition events are managed in two memory blocks.
In a first memory block, which is designed as a simple array, the ignition control device stores the ignition event setpoints for the cylinder that is moving toward its upper ignition dead center during the current segment as well as for all subsequent cylinders.
Based on its internal states, the ignition output process determines the currently active degree of overlap and sets an overlap counter.
A second memory block is organized as a FIFO (first-in first-out) memory (shift register). With each ignition interval, the FIFO elements shift down one element. The overlap counter defines the element in the first memory block to be copied to the top element in the FIFO memory.
Instead of the usual arrangement according to the related art, the ignition output receives the ignition angle not directly from the first memory block of the ignition control device, but from the ignition angle FIFO memory, which can be implemented as separate hardware or as a FIFO area driven by the controller hardware independently of the CPU runtime.
The arrangement has the following special advantages. The transition to a higher degree of overlap takes into account cylinder-specific variations in the ignition angle. The transmission of values is controlled via memory areas and not via temporary buffers. Known application systems usually make memory areas visible, which means that the mechanic can easily follow the event calculation. In particular, this makes it possible to determine that the speed values are no longer up-to-date, which occurs during the transition to overlap mode, as well as the respective tolerances. The on-chip hardware circuits commonly used in microcontrollers make it possible to manage FIFO memories without intervention by the CPU. The method can thus be carried out nearly without change in runtime. The array/FIFO mechanism can also be used by other output methods in which segment overlapping occurs, such as injection output. The ignition angle array and overlap counter can be used to predict overlapping in a subsequent segment, thus avoiding errors during the transition to overlap mode.
According to one preferred embodiment, a prediction device is provided to predict an overlap in the subsequent ignition cycle.
According to a further preferred embodiment, the ignition angle FIFO memory is implemented by software in a read/write memory.
According to a further preferred embodiment, the copy device is implemented by a burst mechanism in a microcontroller.